package com.adjy.pathbuilders.scenario;

import java.util.List;

/**
 * A {@link Scenario} is an abstraction of game scenario. A scenario here is 
 * understood as a set of objects, which have different positions. More formally, 
 * a {@link Scenario} is a group of {@link ScenarioObject}.
 */
public interface Scenario {
	/**
	 * Get the objects of the {@link Scenario}
	 * @return a {@link List} that contains the objects of 
	 * the {@link Scenario}. Note that not necessarily changes 
	 * on the returned {@link List} modify the {@link Scenario}.
	 */
	List<ScenarioObject> getScenarioObjects();
	
	public boolean isEmpty();
	
}
